package org.example.leetcode;

import java.math.BigDecimal;
import java.math.RoundingMode;

public class BigDecimalValidator {

    public static boolean isValid(BigDecimal value) {
        // 检查是否不大于 30
        if (value.compareTo(new BigDecimal("30")) > 0) {
            return false;
        }

        // 检查最多两位小数
        try {
            value = value.setScale(2, RoundingMode.UNNECESSARY);
        } catch (ArithmeticException e) {
            return false;
        }

        return true;
    }

    public static void main(String[] args) {
        // 测试一些值
        BigDecimal[] values = {
                new BigDecimal("29.99"),
                new BigDecimal("30.00"),
                new BigDecimal("30.01"),
                new BigDecimal("29.995"),
                new BigDecimal("29.994")
        };

        for (BigDecimal value : values) {
            System.out.println("Value: " + value + " is valid: " + isValid(value));
        }
    }
}